package me.helllp.bootman.back.services;

import org.apache.shiro.authc.AuthenticationException;

import me.helllp.bootman.back.config.shiro.JwtPlayload;

public interface TokenService {
	/**
	 * 签发Token
	 * 
	 * @param tokenId		tokenID
	 * @param userId		用户ID
	 * @param isssuer		发行者
	 * @param period		有效期
	 * @param roles			角色信息
	 * @param permissions	权限信息
	 * @return
	 */
	public String signToken(String tokenId, Long userId, String issuer, Long period, String roles, String permissions);
	
	/**
	 * 验证Token是否有效
	 * 
	 * @param token
	 * @return			有效则返回Playload结构
	 * @throws AuthenticationException
	 */
	public JwtPlayload verifyToken(String token) throws AuthenticationException;
}
